package com.trinity.campus.domain;

import com.trinity.common.annotation.Excel;
import com.trinity.common.core.domain.BaseEntity;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * 学校组织机构对象 campus_school_org
 *
 * @author dsp
 * @date 2024-01-18
 */
@Data
public class CampusSchoolOrg extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private String id;

    /**
     * 后台部门账号ID
     */
    @Excel(name = "后台部门账号ID")
    private String sysDeptId;

    /**
     * 所属部门
     */
    @Excel(name = "所属部门")
    private String sysOrgCode;

    /**
     * 状态（0正常 1停用）
     */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String status;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;

    /**
     * 名称
     */
    @Excel(name = "名称")
    private String name;

    /**
     * 父级节点
     */
    @Excel(name = "父级节点")
    private String parentId;

    /**
     * 是否有子节点
     */
    @Excel(name = "是否有子节点")
    private String hasChild;

    /**
     * 编号
     */
    @Excel(name = "编号")
    private String code;

    /**
     * 组织机构类型
     */
    @Excel(name = "组织机构类型")
    private String strucType;

    /**
     * 祖级列表
     */
    @Excel(name = "祖级列表")
    private String ancestors;

    /**
     * $column.columnComment
     */
    @Excel(name = "排序")
    private Long orderNum;

    /**
     * 班号
     */
    @Excel(name = "班号")
    private String clazzNumber;

    /**
     * 年级
     */
    @Excel(name = "年级")
    private String grade;

    /**
     * 子部门
     */
    private List<CampusSchoolOrg> children = new ArrayList<>();

}
